#!/bin/bash

# MongoDB用户管理工具启动脚本

echo "=== MongoDB用户管理工具启动脚本 ==="

# 检查Docker是否安装
if command -v docker &> /dev/null && command -v docker-compose &> /dev/null; then
    echo "检测到Docker环境，使用Docker Compose启动..."
    
    # 检查.env文件是否存在
    if [ ! -f .env ]; then
        echo "创建.env配置文件..."
        cp .env.example .env
        echo "请编辑.env文件配置数据库密码等信息"
        echo "然后重新运行此脚本"
        exit 1
    fi
    
    # 启动服务
    echo "启动Docker服务..."
    docker-compose up -d
    
    echo "等待服务启动..."
    sleep 10
    
    # 检查服务状态
    echo "检查服务状态..."
    docker-compose ps
    
    echo ""
    echo "=== 启动完成 ==="
    echo "访问地址: http://localhost:5000"
    echo "默认用户名: admin"
    echo "默认密码: admin123"
    echo ""
    echo "查看日志: docker-compose logs -f mongo-manager"
    echo "停止服务: docker-compose down"
    
else
    echo "未检测到Docker环境，使用传统方式启动..."
    
    # 检查Python环境
    if ! command -v python3 &> /dev/null; then
        echo "错误: 未找到Python3，请先安装Python3"
        exit 1
    fi
    
    # 检查依赖
    if [ ! -f requirements.txt ]; then
        echo "错误: 未找到requirements.txt文件"
        exit 1
    fi
    
    # 安装依赖
    echo "安装Python依赖..."
    pip3 install -r requirements.txt
    
    # 检查配置文件
    if [ ! -f config.json ]; then
        echo "错误: 未找到config.json配置文件，请先配置数据库连接信息"
        exit 1
    fi
    
    # 启动应用
    echo "启动应用..."
    python3 app.py
fi